#ifndef KUNINSTALLDIALOG_H
#define KUNINSTALLDIALOG_H

#include <QDialog>
#include <QWidget>
#include <QPushButton>
#include <QLabel>
#include <QLayout>
#include "../screencapsdk_global.h"
#include "themeController.h"
#include "kdialog.h"

namespace kdk
{

/** @defgroup DialogBoxModule
  * @{
  */

static const QByteArray ORG_UKUI_STYLE_FONT = "org.ukui.style";
static const QByteArray GSETTING_FONT_KEY = "systemFontSize";

class KUninstallDialogPrivate;

/**
 * @brief 卸载对话框，当用户卸载时可能会弹出此提示对话框
 */
class SCREENCAPSDK_EXPORT KUninstallDialog:public KDialog
{
    Q_OBJECT

public:
    KUninstallDialog(QString appName, QString appVersion, QWidget *parent=nullptr);
    ~KUninstallDialog();

    /**
     * @brief debAppNameLabel
     * @return
     */
    QLabel* debAppNameLabel();

    /**
     * @brief 包名Label
     * @return
     */
    QLabel* debNameLabel();

    /**
     * @brief 包IconLabel
     * @return
     */
    QLabel* debIconLabel();

    /**
     * @brief 包版本Label
     * @return
     */
    QLabel* debVersionLabel();

    /**
     * @brief 卸载按钮
     * @return
     */
    QPushButton* uninstallButtton();

protected:
    void changeTheme();

private:
    Q_DECLARE_PRIVATE(KUninstallDialog)
    KUninstallDialogPrivate*const d_ptr;
};
}
/**
  * @example testDialog/widget.h
  * @example testDialog/widget.cpp
  * @}
  */
#endif // KUNINSTALLDIALOG_H
